package com.hghivln.service;

import com.hghivln.pojo.dto.RoleDto;
import com.hghivln.pojo.vo.AjaxResult;

public interface RoleService {
    /**
     * 分页查询
     */
    AjaxResult listRoleForPage(RoleDto roleDto);

    /**
     * 添加
     */
    AjaxResult addRole(RoleDto roleDto);

    /**
     * 修改
     */
    AjaxResult updateRole(RoleDto roleDto);

    /**
     * 删除
     */
    AjaxResult deleteRoleByIds(Long[] ids);

    /**
     * 查询一个
     */
    AjaxResult getRoleById(Long id);

    /**
     * 保存角色和菜单权限之间的关系
     */
    void saveRoleMenu(Long roleId, Long[] menuIds);

    /**
     * 查询所有可用角色
     */
    AjaxResult selectAllRole();

    /**
     * 根据用户ID查询用户拥有的角色IDS
     */
    AjaxResult selectRoleIdsByUserId(Long userId);

    /**
     * 保存角色和用户之间的关系
     */
    void saveRoleUser(Long userId,Long[] roles);

}
